Welcome to JavaScript!

6.16 对象的易变性

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>Title</title>

<script type="text/javascript">

//1、变量不易变性

var a="123";

var b=a;

b="老六";

document.write("修改b的值后,a的值为:",a,"<br>")

document.write("修改b的值后,b的值为:",b)

//从以上例子可以看出,声明a变量后,会给a分配一块内存,同样也会给b分配一块内存,同时将a的值赋值给b;

//所以当改变b的值时,a不会改变;

//2、对象易变性

var ren_a={name:"小明",sex:"男",age:40,height:1.69};

var ren_b=ren_a;

ren_b.name="老六";

console.log(ren_a);

console.log(ren_b);

//从以上例子可以看出,声明ren_a对象后,会给ren_a分配一块内存,但将ren_a的值赋值给ren_b后,

//不会再分配一块内存给到ren_b,ren_b和ren_a共用一块内存但有不同的名称;

//所以当改变b的值时,a会改变;

</script>

</head>

<body>

</body>

</html>

返回值:

修改b的值后,a的值为:123

修改b的值后,b的值为:老六